package com.bweab.dao.api;

import com.bweab.pojo.UsersTb;
import com.bweab.pojo.en.UserDepositDormitoryEn;

import java.util.List;

/**
 * 用户信息查询借口
 * */
public interface UserTbDaoInterface {
    /**
     * 用户信息查询
     * */
    UsersTb getUserInfo(String username);

    /**
     *
     * @param username 用户名
     * @param userpassword 用户 密码
     * @param userSex 用户性别
     * @param userXh 用户学号
     * @param userPhone 用户手机号
     * @return 返回影响
     *
     * 该方法用户插入用户信息
     */
    int insertUser(String username, String userpassword, String userSex, String userXh, String userPhone);

    /**
     *
     * @param userName
     * @param userSex
     * @param userPhone
     * @param userXh
     * @return
     *
     * 该方法用于修改用户信息
     */
    int alterUserInfo(String userName, String userSex, String userPhone, String userXh);

    /**
     *
     * @param username
     * @param userpassword
     *
     *
     * @return
     * 该方法用于修改用户的密码
     */
    int alterUserPwd(String username, String userpassword);


    /**
     * 管理员增加用户的服务
     * @param username  用户名字
     * @param userPhone  用户电话
     * @param userStatus  用户状态
     * @param userXh   用户学号
     * @param userSex  用户性别
     * @param userpassword 用户密码
     * @return  1成功  0 失败
     */
    int adminAddUser(String username, String userPhone, String userStatus, String userXh, String userSex, String userpassword);

    /**
     * 管理员修改用户信息
     * @param userName 用户名
     * @param userPassword 用户密码
     * @param userSex 用户性别
     * @param userXh 用户学号
     * @param userStatus 用户状态
     * @param userPhone 用户电话
     * @return jsonResult
     */
    int adminAlterUserInfo(String userName, String userPassword, String userSex, String userXh, String userStatus, String userPhone);

    /**
     * 管理员通过用户id删除用户信息
     * @param userId 用户id
     * @return 影响行数 1成功 0失败
     */
    int adminDeleteUserInfoByUserId(int userId);

    /**
     * 管理员通过用户名删除用户信息
     * @param userName 用户名
     * @return 1成功 0 失败
     */
    int adminDeleteUserInfoByUserName(String userName);
}
